package com.cskaoyan.javase.oop2._1extend._9final._3variable._1local;

/**
 * @description: final修饰局部变量
 * @author: wuguidong@cskaoyan.onaliyun.com
 **/

/**
 * final修饰局部变量表示一个局部的常量
 * 以方法为例,方法中能够定义变量的局部位置有:
 *      1,方法体中
 *      语法: final 数据类型 变量名;
 *      表示该局部变量一旦赋值就不能再修改了
 *
 *      2,形参列表中
 *      语法: final 数据类型 变量名;
 *      表示该参数在方法传入后就不能再修改了,而不是必须传入常量
 *
 */
public class Demo {
    public static void main(String[] args) {
        int a = 10;
        test(a);
    }

    public static void test(final int x) {
        //Cannot assign a value to final variable 'x'
        //x = 1;
        //在方法体中定义局部常量
        final int a;
        a = 10;
        //Variable 'a' might already have been assigned to
        //a = 20;
        System.out.println(a);
        //a++;
    }
}
